#ifndef SERVER_H
#define SERVER_H
#include <sys/socket.h>
#include <netinet/in.h>
#include <gtk/gtk.h>
#include "msgqueuelock.h"
#include "ui.h"

//void * chat_msg_handle(gpointer data);
//gboolean ini_server_code;//初始化服务器表示码         server.h
int sockfd;
gboolean connect_code;//为TRUE表示连接成功，FALSE失败 server.h

void ConnectServer();
void * c_handle_parse();//线程-检查队列，处理数据包
void * c_handle_request();//线程-接受数据包
void c_parse(struct Package *buff);

extern struct sockaddr_in address;
extern struct Msgqueue cqueue;//接受服务器发来的消息。基于10个数组的队列，内有信号量保持同步
extern struct Msgqueue reci_msg_queue;//聊天记录队列

extern gboolean exit_code;//为0表示，线程即将推出            ui.h
extern GtkWidget * lb_info;
extern GtkWidget * friend_vbox;//众多好友

extern GtkWidget * main_window;
extern GtkWidget * login_window;
extern GtkWidget * info_window;

#endif // SERVER_H
